var mongoose = require('mongoose');
mongoose.Promise = require('bluebird');
var Schema = mongoose.Schema;

var UserSchema = new Schema({
  // 唯一用户名
  username: String,
  // 积分
  integral: { type: Number, default: 0 },
  // 手机号
  phone: String,
  // openid
  openid: String,
  // 微信用户名
  nickname: String,
  // 性别
  sex: String,
  // 省
  province: String,
  // 城市
  city: String,
  // 国家
  country: String,
  // 头像
  headimgurl: String,
  // 创建时间
  create_at: { type: Date, default: Date.now },
});

// 静态方法 - 获取用户
UserSchema.statics.getUser = function (openid, cb) {
  this.findOne({'openid': openid}, cb);
};

// 静态方法 - 保存用户
UserSchema.statics.saveToken = function (user, cb) {
  user.save(function (err, result) {
    return cb(err, result);
  });
};

// 生成Model
module.exports = mongoose.model('User', UserSchema);
